﻿/*+===================================================================
File:      BossOneEnemy.h

Summary:   Định nghĩa lớp CBossOneEnemy
===================================================================+*/

#ifndef _BOSSONEENEMY_H_
#define _BOSSONEENEMY_H_

#include "GameObject.h"
#include "Bill.h"
#include "Gun.h"

/*C+==================================================================
Class:    CBossOne

Summary:  Lớp CBossOne miêu tả boss màn 1.
==================================================================-C*/
class CBossOneEnemy : public CMoveableObject
{
private:
	CBill* m_bill;            // Con trỏ đến đối tượng Bill.
	int m_nStatus;            // Trạng thái đối tượng.
	int m_nFaceDirection;     // Hướng của đối tượng.
	CGun* m_pGun;             // Súng của đối tượng.
	float m_fTimeChange;      // Thời gian chuyển trạng thái.
	bool m_bIsFiring;
	float m_fTimeFire;
	float m_timeDie;        // Thời gian hiệu ứng chết.

	void UpdateAnimation();
public:
	CBossOneEnemy(CBill* bill, D3DXVECTOR2 pos, int id, int typeId);
	~CBossOneEnemy();

	void Update(float timeFrame);

	void UpdateCollision(vector<CGameObject*> vecGameObjs, float timeFrame);

	void Draw();

	bool Kill();

	void Destroy();
};

#endif